TSTP Solution File: SEV208^5 by Satallax---3.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Satallax---3.5
% Problem  : SEV208^5 : TPTP v8.1.0. Released v4.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : satallax -E eprover-ho -P picomus -M modes -p tstp -t %d %s

% Computer : n006.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 600s
% DateTime : Tue Jul 19 18:05:22 EDT 2022

% Result   : Theorem 0.18s 0.36s
% Output   : Proof 0.18s
% Verified : 
% SZS Type : ERROR: Analysing output (MakeTreeStats fails)

% Comments : 
%------------------------------------------------------------------------------
thf(ty_a,type,
    a: $tType ).

thf(ty_cP,type,
    cP: a > a > a ).

thf(ty_z,type,
    z: a ).

thf(ty_eigen__0,type,
    eigen__0: a > a > a > $o ).

thf(ty_y,type,
    y: a ).

thf(ty_w,type,
    w: a ).

thf(ty_c0,type,
    c0: a ).

thf(ty_x,type,
    x: a ).

thf(sP1,plain,
    ( sP1
  <=> ! [X1: a,X2: a,X3: a] :
        ( ( ~ ( ( ( X1 = c0 )
               => ( X2 != X3 ) )
             => ~ ( ( X2 = c0 )
                 => ( X1 != X3 ) ) )
         => ~ ! [X4: a,X5: a,X6: a,X7: a,X8: a,X9: a] :
                ( ~ ( ~ ( ~ ( ( X1
                              = ( cP @ X4 @ X5 ) )
                           => ( X2
                             != ( cP @ X6 @ X7 ) ) )
                       => ( X3
                         != ( cP @ X8 @ X9 ) ) )
                   => ~ ( eigen__0 @ X4 @ X6 @ X8 ) )
               => ~ ( eigen__0 @ X5 @ X7 @ X9 ) ) )
       => ( eigen__0 @ X1 @ X2 @ X3 ) ) ),
    introduced(definition,[new_symbols(definition,[sP1])]) ).

thf(sP2,plain,
    ( sP2
  <=> ( ( ( cP @ x @ w )
        = ( cP @ x @ w ) )
     => ( ( cP @ y @ z )
       != ( cP @ y @ z ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP2])]) ).

thf(sP3,plain,
    ( sP3
  <=> ! [X1: a,X2: a,X3: a,X4: a,X5: a] :
        ( ~ ( ~ ( ~ ( ( ( cP @ x @ w )
                      = ( cP @ x @ X1 ) )
                   => ( ( cP @ y @ z )
                     != ( cP @ X2 @ X3 ) ) )
               => ( ( cP @ y @ z )
                 != ( cP @ X4 @ X5 ) ) )
           => ~ ( eigen__0 @ x @ X2 @ X4 ) )
       => ~ ( eigen__0 @ X1 @ X3 @ X5 ) ) ),
    introduced(definition,[new_symbols(definition,[sP3])]) ).

thf(sP4,plain,
    ( sP4
  <=> ! [X1: a] :
        ( ( ~ ( ( ( ( cP @ x @ w )
                  = c0 )
               => ( ( cP @ y @ z )
                 != X1 ) )
             => ~ ( ( ( cP @ y @ z )
                    = c0 )
                 => ( ( cP @ x @ w )
                   != X1 ) ) )
         => ~ ! [X2: a,X3: a,X4: a,X5: a,X6: a,X7: a] :
                ( ~ ( ~ ( ~ ( ( ( cP @ x @ w )
                              = ( cP @ X2 @ X3 ) )
                           => ( ( cP @ y @ z )
                             != ( cP @ X4 @ X5 ) ) )
                       => ( X1
                         != ( cP @ X6 @ X7 ) ) )
                   => ~ ( eigen__0 @ X2 @ X4 @ X6 ) )
               => ~ ( eigen__0 @ X3 @ X5 @ X7 ) ) )
       => ( eigen__0 @ ( cP @ x @ w ) @ ( cP @ y @ z ) @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP4])]) ).

thf(sP5,plain,
    ( sP5
  <=> ( ~ ( ~ ( ~ sP2
             => ( ( cP @ y @ z )
               != ( cP @ y @ z ) ) )
         => ~ ( eigen__0 @ x @ y @ y ) )
     => ~ ( eigen__0 @ w @ z @ z ) ) ),
    introduced(definition,[new_symbols(definition,[sP5])]) ).

thf(sP6,plain,
    ( sP6
  <=> $false ),
    introduced(definition,[new_symbols(definition,[sP6])]) ).

thf(sP7,plain,
    ( sP7
  <=> ( ( cP @ y @ z )
      = ( cP @ y @ z ) ) ),
    introduced(definition,[new_symbols(definition,[sP7])]) ).

thf(sP8,plain,
    ( sP8
  <=> ( ( cP @ x @ w )
      = ( cP @ x @ w ) ) ),
    introduced(definition,[new_symbols(definition,[sP8])]) ).

thf(sP9,plain,
    ( sP9
  <=> ( ~ ( ( ( ( cP @ x @ w )
              = c0 )
           => ~ sP7 )
         => ~ ( ( ( cP @ y @ z )
                = c0 )
             => ( ( cP @ x @ w )
               != ( cP @ y @ z ) ) ) )
     => ~ ! [X1: a,X2: a,X3: a,X4: a,X5: a,X6: a] :
            ( ~ ( ~ ( ~ ( ( ( cP @ x @ w )
                          = ( cP @ X1 @ X2 ) )
                       => ( ( cP @ y @ z )
                         != ( cP @ X3 @ X4 ) ) )
                   => ( ( cP @ y @ z )
                     != ( cP @ X5 @ X6 ) ) )
               => ~ ( eigen__0 @ X1 @ X3 @ X5 ) )
           => ~ ( eigen__0 @ X2 @ X4 @ X6 ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP9])]) ).

thf(sP10,plain,
    ( sP10
  <=> ( ~ sP2
     => ~ sP7 ) ),
    introduced(definition,[new_symbols(definition,[sP10])]) ).

thf(sP11,plain,
    ( sP11
  <=> ! [X1: a] :
        ( ~ ( ~ ( ~ sP2
               => ( ( cP @ y @ z )
                 != ( cP @ y @ X1 ) ) )
           => ~ ( eigen__0 @ x @ y @ y ) )
       => ~ ( eigen__0 @ w @ z @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP11])]) ).

thf(sP12,plain,
    ( sP12
  <=> ! [X1: a,X2: a] :
        ( ~ ( ~ ( ~ sP2
               => ( ( cP @ y @ z )
                 != ( cP @ X1 @ X2 ) ) )
           => ~ ( eigen__0 @ x @ y @ X1 ) )
       => ~ ( eigen__0 @ w @ z @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP12])]) ).

thf(sP13,plain,
    ( sP13
  <=> ( sP9
     => ( eigen__0 @ ( cP @ x @ w ) @ ( cP @ y @ z ) @ ( cP @ y @ z ) ) ) ),
    introduced(definition,[new_symbols(definition,[sP13])]) ).

thf(sP14,plain,
    ( sP14
  <=> ( eigen__0 @ x @ y @ y ) ),
    introduced(definition,[new_symbols(definition,[sP14])]) ).

thf(sP15,plain,
    ( sP15
  <=> ( eigen__0 @ w @ z @ z ) ),
    introduced(definition,[new_symbols(definition,[sP15])]) ).

thf(sP16,plain,
    ( sP16
  <=> ( ~ sP6
     => ~ sP1 ) ),
    introduced(definition,[new_symbols(definition,[sP16])]) ).

thf(sP17,plain,
    ( sP17
  <=> ! [X1: a,X2: a,X3: a,X4: a,X5: a,X6: a] :
        ( ~ ( ~ ( ~ ( ( ( cP @ x @ w )
                      = ( cP @ X1 @ X2 ) )
                   => ( ( cP @ y @ z )
                     != ( cP @ X3 @ X4 ) ) )
               => ( ( cP @ y @ z )
                 != ( cP @ X5 @ X6 ) ) )
           => ~ ( eigen__0 @ X1 @ X3 @ X5 ) )
       => ~ ( eigen__0 @ X2 @ X4 @ X6 ) ) ),
    introduced(definition,[new_symbols(definition,[sP17])]) ).

thf(sP18,plain,
    ( sP18
  <=> ! [X1: a > a > a > $o] :
        ( ~ ( ~ sP6
           => ~ ! [X2: a,X3: a,X4: a] :
                  ( ( ~ ( ( ( X2 = c0 )
                         => ( X3 != X4 ) )
                       => ~ ( ( X3 = c0 )
                           => ( X2 != X4 ) ) )
                   => ~ ! [X5: a,X6: a,X7: a,X8: a,X9: a,X10: a] :
                          ( ~ ( ~ ( ~ ( ( X2
                                        = ( cP @ X5 @ X6 ) )
                                     => ( X3
                                       != ( cP @ X7 @ X8 ) ) )
                                 => ( X4
                                   != ( cP @ X9 @ X10 ) ) )
                             => ~ ( X1 @ X5 @ X7 @ X9 ) )
                         => ~ ( X1 @ X6 @ X8 @ X10 ) ) )
                 => ( X1 @ X2 @ X3 @ X4 ) ) )
       => ( X1 @ w @ z @ z ) ) ),
    introduced(definition,[new_symbols(definition,[sP18])]) ).

thf(sP19,plain,
    ( sP19
  <=> ( eigen__0 @ ( cP @ x @ w ) @ ( cP @ y @ z ) @ ( cP @ y @ z ) ) ),
    introduced(definition,[new_symbols(definition,[sP19])]) ).

thf(sP20,plain,
    ( sP20
  <=> ( ~ sP10
     => ~ sP14 ) ),
    introduced(definition,[new_symbols(definition,[sP20])]) ).

thf(sP21,plain,
    ( sP21
  <=> ! [X1: a,X2: a] :
        ( ( ~ ( ( ( ( cP @ x @ w )
                  = c0 )
               => ( X1 != X2 ) )
             => ~ ( ( X1 = c0 )
                 => ( ( cP @ x @ w )
                   != X2 ) ) )
         => ~ ! [X3: a,X4: a,X5: a,X6: a,X7: a,X8: a] :
                ( ~ ( ~ ( ~ ( ( ( cP @ x @ w )
                              = ( cP @ X3 @ X4 ) )
                           => ( X1
                             != ( cP @ X5 @ X6 ) ) )
                       => ( X2
                         != ( cP @ X7 @ X8 ) ) )
                   => ~ ( eigen__0 @ X3 @ X5 @ X7 ) )
               => ~ ( eigen__0 @ X4 @ X6 @ X8 ) ) )
       => ( eigen__0 @ ( cP @ x @ w ) @ X1 @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP21])]) ).

thf(sP22,plain,
    ( sP22
  <=> ( ~ sP16
     => sP15 ) ),
    introduced(definition,[new_symbols(definition,[sP22])]) ).

thf(sP23,plain,
    ( sP23
  <=> ( ~ sP16
     => sP14 ) ),
    introduced(definition,[new_symbols(definition,[sP23])]) ).

thf(sP24,plain,
    ( sP24
  <=> ! [X1: a > a > a > $o] :
        ( ~ ( ~ sP6
           => ~ ! [X2: a,X3: a,X4: a] :
                  ( ( ~ ( ( ( X2 = c0 )
                         => ( X3 != X4 ) )
                       => ~ ( ( X3 = c0 )
                           => ( X2 != X4 ) ) )
                   => ~ ! [X5: a,X6: a,X7: a,X8: a,X9: a,X10: a] :
                          ( ~ ( ~ ( ~ ( ( X2
                                        = ( cP @ X5 @ X6 ) )
                                     => ( X3
                                       != ( cP @ X7 @ X8 ) ) )
                                 => ( X4
                                   != ( cP @ X9 @ X10 ) ) )
                             => ~ ( X1 @ X5 @ X7 @ X9 ) )
                         => ~ ( X1 @ X6 @ X8 @ X10 ) ) )
                 => ( X1 @ X2 @ X3 @ X4 ) ) )
       => ( X1 @ x @ y @ y ) ) ),
    introduced(definition,[new_symbols(definition,[sP24])]) ).

thf(sP25,plain,
    ( sP25
  <=> ! [X1: a,X2: a,X3: a] :
        ( ~ ( ~ ( ~ ( sP8
                   => ( ( cP @ y @ z )
                     != ( cP @ y @ X1 ) ) )
               => ( ( cP @ y @ z )
                 != ( cP @ X2 @ X3 ) ) )
           => ~ ( eigen__0 @ x @ y @ X2 ) )
       => ~ ( eigen__0 @ w @ X1 @ X3 ) ) ),
    introduced(definition,[new_symbols(definition,[sP25])]) ).

thf(sP26,plain,
    ( sP26
  <=> ! [X1: a,X2: a,X3: a,X4: a] :
        ( ~ ( ~ ( ~ ( sP8
                   => ( ( cP @ y @ z )
                     != ( cP @ X1 @ X2 ) ) )
               => ( ( cP @ y @ z )
                 != ( cP @ X3 @ X4 ) ) )
           => ~ ( eigen__0 @ x @ X1 @ X3 ) )
       => ~ ( eigen__0 @ w @ X2 @ X4 ) ) ),
    introduced(definition,[new_symbols(definition,[sP26])]) ).

thf(cS_INCL_LEM1_pme,conjecture,
    ( ~ ( sP24
       => ~ sP18 )
   => ! [X1: a > a > a > $o] :
        ( ~ ( ~ sP6
           => ~ ! [X2: a,X3: a,X4: a] :
                  ( ( ~ ( ( ( X2 = c0 )
                         => ( X3 != X4 ) )
                       => ~ ( ( X3 = c0 )
                           => ( X2 != X4 ) ) )
                   => ~ ! [X5: a,X6: a,X7: a,X8: a,X9: a,X10: a] :
                          ( ~ ( ~ ( ~ ( ( X2
                                        = ( cP @ X5 @ X6 ) )
                                     => ( X3
                                       != ( cP @ X7 @ X8 ) ) )
                                 => ( X4
                                   != ( cP @ X9 @ X10 ) ) )
                             => ~ ( X1 @ X5 @ X7 @ X9 ) )
                         => ~ ( X1 @ X6 @ X8 @ X10 ) ) )
                 => ( X1 @ X2 @ X3 @ X4 ) ) )
       => ( X1 @ ( cP @ x @ w ) @ ( cP @ y @ z ) @ ( cP @ y @ z ) ) ) ) ).

thf(h0,negated_conjecture,
    ~ ( ~ ( sP24
         => ~ sP18 )
     => ! [X1: a > a > a > $o] :
          ( ~ ( ~ sP6
             => ~ ! [X2: a,X3: a,X4: a] :
                    ( ( ~ ( ( ( X2 = c0 )
                           => ( X3 != X4 ) )
                         => ~ ( ( X3 = c0 )
                             => ( X2 != X4 ) ) )
                     => ~ ! [X5: a,X6: a,X7: a,X8: a,X9: a,X10: a] :
                            ( ~ ( ~ ( ~ ( ( X2
                                          = ( cP @ X5 @ X6 ) )
                                       => ( X3
                                         != ( cP @ X7 @ X8 ) ) )
                                   => ( X4
                                     != ( cP @ X9 @ X10 ) ) )
                               => ~ ( X1 @ X5 @ X7 @ X9 ) )
                           => ~ ( X1 @ X6 @ X8 @ X10 ) ) )
                   => ( X1 @ X2 @ X3 @ X4 ) ) )
         => ( X1 @ ( cP @ x @ w ) @ ( cP @ y @ z ) @ ( cP @ y @ z ) ) ) ),
    inference(assume_negation,[status(cth)],[cS_INCL_LEM1_pme]) ).

thf(h1,assumption,
    ~ ( sP24
     => ~ sP18 ),
    introduced(assumption,[]) ).

thf(h2,assumption,
    ~ ! [X1: a > a > a > $o] :
        ( ~ ( ~ sP6
           => ~ ! [X2: a,X3: a,X4: a] :
                  ( ( ~ ( ( ( X2 = c0 )
                         => ( X3 != X4 ) )
                       => ~ ( ( X3 = c0 )
                           => ( X2 != X4 ) ) )
                   => ~ ! [X5: a,X6: a,X7: a,X8: a,X9: a,X10: a] :
                          ( ~ ( ~ ( ~ ( ( X2
                                        = ( cP @ X5 @ X6 ) )
                                     => ( X3
                                       != ( cP @ X7 @ X8 ) ) )
                                 => ( X4
                                   != ( cP @ X9 @ X10 ) ) )
                             => ~ ( X1 @ X5 @ X7 @ X9 ) )
                         => ~ ( X1 @ X6 @ X8 @ X10 ) ) )
                 => ( X1 @ X2 @ X3 @ X4 ) ) )
       => ( X1 @ ( cP @ x @ w ) @ ( cP @ y @ z ) @ ( cP @ y @ z ) ) ),
    introduced(assumption,[]) ).

thf(h3,assumption,
    sP24,
    introduced(assumption,[]) ).

thf(h4,assumption,
    sP18,
    introduced(assumption,[]) ).

thf(h5,assumption,
    ~ ( ~ sP16
     => sP19 ),
    introduced(assumption,[]) ).

thf(h6,assumption,
    ~ sP16,
    introduced(assumption,[]) ).

thf(h7,assumption,
    ~ sP19,
    introduced(assumption,[]) ).

thf(h8,assumption,
    ~ sP6,
    introduced(assumption,[]) ).

thf(h9,assumption,
    sP1,
    introduced(assumption,[]) ).

thf(1,plain,
    sP7,
    inference(prop_rule,[status(thm)],]) ).

thf(2,plain,
    sP8,
    inference(prop_rule,[status(thm)],]) ).

thf(3,plain,
    ( ~ sP3
    | sP26 ),
    inference(all_rule,[status(thm)],]) ).

thf(4,plain,
    ( ~ sP26
    | sP25 ),
    inference(all_rule,[status(thm)],]) ).

thf(5,plain,
    ( ~ sP25
    | sP12 ),
    inference(all_rule,[status(thm)],]) ).

thf(6,plain,
    ( ~ sP12
    | sP11 ),
    inference(all_rule,[status(thm)],]) ).

thf(7,plain,
    ( ~ sP11
    | sP5 ),
    inference(all_rule,[status(thm)],]) ).

thf(8,plain,
    ( ~ sP5
    | sP20
    | ~ sP15 ),
    inference(prop_rule,[status(thm)],]) ).

thf(9,plain,
    ( ~ sP20
    | sP10
    | ~ sP14 ),
    inference(prop_rule,[status(thm)],]) ).

thf(10,plain,
    ( ~ sP10
    | sP2
    | ~ sP7 ),
    inference(prop_rule,[status(thm)],]) ).

thf(11,plain,
    ( ~ sP2
    | ~ sP8
    | ~ sP7 ),
    inference(prop_rule,[status(thm)],]) ).

thf(12,plain,
    ( ~ sP17
    | sP3 ),
    inference(all_rule,[status(thm)],]) ).

thf(13,plain,
    ( sP9
    | sP17 ),
    inference(prop_rule,[status(thm)],]) ).

thf(14,plain,
    ( ~ sP24
    | sP23 ),
    inference(all_rule,[status(thm)],]) ).

thf(15,plain,
    ( ~ sP23
    | sP16
    | sP14 ),
    inference(prop_rule,[status(thm)],]) ).

thf(16,plain,
    ( ~ sP18
    | sP22 ),
    inference(all_rule,[status(thm)],]) ).

thf(17,plain,
    ( ~ sP22
    | sP16
    | sP15 ),
    inference(prop_rule,[status(thm)],]) ).

thf(18,plain,
    ( ~ sP16
    | sP6
    | ~ sP1 ),
    inference(prop_rule,[status(thm)],]) ).

thf(19,plain,
    ~ sP6,
    inference(prop_rule,[status(thm)],]) ).

thf(20,plain,
    ( ~ sP1
    | sP21 ),
    inference(all_rule,[status(thm)],]) ).

thf(21,plain,
    ( ~ sP21
    | sP4 ),
    inference(all_rule,[status(thm)],]) ).

thf(22,plain,
    ( ~ sP4
    | sP13 ),
    inference(all_rule,[status(thm)],]) ).

thf(23,plain,
    ( ~ sP13
    | ~ sP9
    | sP19 ),
    inference(prop_rule,[status(thm)],]) ).

thf(24,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h8,h9,h6,h7,h5,h3,h4,h1,h2,h0])],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,h3,h4,h9,h7]) ).

thf(25,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h6,h7,h5,h3,h4,h1,h2,h0]),tab_negimp(discharge,[h8,h9])],[h6,24,h8,h9]) ).

thf(26,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h5,h3,h4,h1,h2,h0]),tab_negimp(discharge,[h6,h7])],[h5,25,h6,h7]) ).

thf(27,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h3,h4,h1,h2,h0]),tab_negall(discharge,[h5]),tab_negall(eigenvar,eigen__0)],[h2,26,h5]) ).

thf(28,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h1,h2,h0]),tab_negimp(discharge,[h3,h4])],[h1,27,h3,h4]) ).

thf(29,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h0]),tab_negimp(discharge,[h1,h2])],[h0,28,h1,h2]) ).

thf(0,theorem,
    ( ~ ( sP24
       => ~ sP18 )
   => ! [X1: a > a > a > $o] :
        ( ~ ( ~ sP6
           => ~ ! [X2: a,X3: a,X4: a] :
                  ( ( ~ ( ( ( X2 = c0 )
                         => ( X3 != X4 ) )
                       => ~ ( ( X3 = c0 )
                           => ( X2 != X4 ) ) )
                   => ~ ! [X5: a,X6: a,X7: a,X8: a,X9: a,X10: a] :
                          ( ~ ( ~ ( ~ ( ( X2
                                        = ( cP @ X5 @ X6 ) )
                                     => ( X3
                                       != ( cP @ X7 @ X8 ) ) )
                                 => ( X4
                                   != ( cP @ X9 @ X10 ) ) )
                             => ~ ( X1 @ X5 @ X7 @ X9 ) )
                         => ~ ( X1 @ X6 @ X8 @ X10 ) ) )
                 => ( X1 @ X2 @ X3 @ X4 ) ) )
       => ( X1 @ ( cP @ x @ w ) @ ( cP @ y @ z ) @ ( cP @ y @ z ) ) ) ),
    inference(contra,[status(thm),contra(discharge,[h0])],[29,h0]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.01/0.11  % Problem  : SEV208^5 : TPTP v8.1.0. Released v4.0.0.
% 0.11/0.12  % Command  : satallax -E eprover-ho -P picomus -M modes -p tstp -t %d %s
% 0.12/0.33  % Computer : n006.cluster.edu
% 0.12/0.33  % Model    : x86_64 x86_64
% 0.12/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.33  % Memory   : 8042.1875MB
% 0.12/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.33  % CPULimit : 300
% 0.12/0.33  % WCLimit  : 600
% 0.12/0.33  % DateTime : Mon Jun 27 21:22:08 EDT 2022
% 0.12/0.33  % CPUTime  : 
% 0.18/0.36  % SZS status Theorem
% 0.18/0.36  % Mode: mode213
% 0.18/0.36  % Inferences: 25
% 0.18/0.36  % SZS output start Proof
% See solution above
%------------------------------------------------------------------------------